package com.zw.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zw.dto.TemplateDto;
import com.zw.entity.Template;
import com.zw.entity.TemplateColumns;

import java.util.List;

public interface TemplateService extends IService<Template> {

    /**
     * 查询模板字段
     *
     * @param id
     * @return
     */
    List<TemplateColumns> templateColumns(Long id);

    /**
     * 查询模板列表
     *
     * @param template
     * @return
     */
    List<Template> selectTemplateList(Template template);

    /**
     * 新增模板
     *
     * @param template
     * @return
     */
    int insertTemplate(Template template);

    /**
     * 修改模板
     *
     * @param template
     * @return
     */
    int updateTemplate(Template template);

    /**
     * 删除模板
     *
     * @param ids
     * @return
     */
    int removeTemplates(Long[] ids);

    /**
     * 根据id查询模板
     *
     * @param templateId
     * @return
     */
    Template selectTemplateById(Long templateId);

    /**
     * 查询可见的模板列表
     *
     * @param templateDto
     * @return
     */
    List<Template> visibleTemplateList(TemplateDto templateDto);

    /**
     * 查询可见的模板
     *
     * @param id
     * @return
     */
    Template visibleTemplate(Long id);
}
